const fs = require("fs");

// 方式1 readFile + writeFile
// 读取文件
// const data = fs.readFileSync('./data.test.txt');
// // 写入文件
// fs.writeFileSync('./data-copy.test.txt', data)

// 方式2 createReadStream + createWriteStream
// 创建读取流
const rs = fs.createReadStream("./data.test.txt");
// 创建写入流
const ws = fs.createWriteStream("./data-copy.test.txt");

// 方式一 ：手动读取数据，写入数据
// 读取数据
// rs.on('data', (chunk) => {
//     console.log(chunk.toString());
//     console.log(chunk.length); // 每次最多读取64kb = 65536 字节（byte）
//     console.log(chunk.byteLength); // 每次最多读取64kb = 65536 字节（byte）
//     ws.write(chunk)
// })

// 读取完成
// rs.on('end', () => {
//     console.log('读取完成');
//     // 关闭写入流
//     ws.close();
// })

// 方式二 ：pipe 通过管道直接复制
rs.pipe(ws);
